page {
  background: #f2f3f7;
}

.page-detail {
  padding-bottom: calc(130rpx + env(safe-area-inset-bottom));

  /* 头部 */
  .det-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 99;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 30rpx;
    background: #fefefe;
  }

  .det-header .item {
    padding: 0 30rpx;
    position: relative;
  }

  .det-header .item::after {
    position: absolute;
    bottom: -10rpx;
    left: 28%;
    right: 28%;
    display: block;
    width: auto;
    height: 4rpx;
    border-radius: 4rpx;
    content: " ";
    font-size: 0;
    background: #fff;
  }

  .det-header .item.active {
    font-weight: 600;
  }

  .det-header .item.active::after {
    background: linear-gradient(to right, #fc1b35, #fff);
  }

  /* 大图 */
  .pic-box {
    width: 750rpx;
    height: 750rpx;
    font-size: 0;
    background: #fff;
  }

  /* 活动信息条 */
  .activity-bar {
    background: #ffeff1;
    display: flex;
    align-items: center;
    position: relative;
  }

  .activity-bar::before {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    display: block;
    width: 20rpx;
    background: #fff;
    content: " ";
    font-size: 0;
  }

  .activity-bar .bar-left {
    flex: 1;
    display: flex;
    align-items: center;
    background: linear-gradient(to right, #ff1a49, #f1091d);
    border-radius: 20rpx;
    padding: 8rpx 40rpx 16rpx 20rpx;
    position: relative;
  }

  .activity-bar .bar-left .price-box {
    flex: 1;
    margin-right: 10rpx;
    line-height: 1;
  }

  .activity-bar .bar-left .price-box .dis-price {
    display: flex;
    align-items: flex-end;
  }

  .activity-bar .bar-left .price-box .dis-price .price {
    font-size: 26rpx;
    color: #fff;
    font-weight: 600;
  }

  .activity-bar .bar-left .price-box .dis-price .price .big {
    font-size: 40rpx;
  }

  .activity-bar .bar-left .price-box .dis-price .dis-number {
    padding: 0 8rpx;
    background: rgba(0, 0, 0, .12);
    border-radius: 30rpx;
    color: #fff;
    font-size: 18rpx;
    height: 24rpx;
    line-height: 24rpx;
    margin-left: 10rpx;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .activity-bar .bar-left .price-box .old-price {
    margin-top: 2rpx;
    font-family: PingFangSC-Medium, tahoma;
    color: #fff;
    font-size: 20rpx;
    display: flex;
    margin-left: 6rpx;
    opacity: .7;
  }

  .activity-bar .bar-left .price-box .old-price .price {
    text-decoration: line-through;
    color: #fff;
    margin-left: -4rpx;
  }

  .activity-bar .bar-left .sold {
    color: #fff;
    font-size: 20rpx;
    text-align: center;
    font-family: PingFangSC-Medium, tahoma;
  }

  .activity-bar .bar-left .sold .progress-bar {
    background: #fff;
    border-radius: 30rpx;
    height: 6rpx;
    padding: 4rpx 6rpx;
    width: 100rpx;
    margin: 6rpx auto 0;
  }

  .activity-bar .bar-left .sold .progress-bar .bar {
    background: #fc1b35;
    height: 100%;
    border-radius: 20rpx;
  }

  .activity-bar .time-box {
    padding: 0 30rpx;
    color: #fc1b35;
    text-align: center;
    font-size: 20rpx;
    font-weight: 600;
    font-family: PingFangSC-Medium, tahoma;
  }

  .activity-bar .time-box .time {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 4rpx;
  }

  .activity-bar .time-box .time .num {
    min-width: 24rpx;
    padding: 0 4rpx;
    height: 32rpx;
    line-height: 32rpx;
    text-align: center;
    background: #fc1b35;
    color: #fff;
    border-radius: 8rpx;
  }

  .activity-bar .time-box .time .colon {
    height: 32rpx;
    line-height: 32rpx;
    margin: 0 6rpx;
  }

  /* 名称、价格 */
  .name-box {
    background: #fff;
    padding: 20rpx 30rpx;
    border-radius: 0 0 10rpx 10rpx;
  }

  .name-box .name {
    font-size: 28rpx;
    font-weight: 600;
  }

  .name-box .discount-info {
    color: #999;
    margin-top: 10rpx;
  }

  .name-box .discount-info .text-arrow {
    display: inline-block;
    color: #fc1b35;
    padding-right: 16rpx;
  }

  .name-box .discount-info .text-arrow::after {
    border-top: 2rpx solid #fc1b35;
    border-right: 2rpx solid #fc1b35;
  }

  .name-box .action-box {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-top: 20rpx;
    margin-bottom: 10rpx;
  }

  .name-box .action-box .price-box {
    flex: 1;
    display: flex;
    align-items: center;
  }

  .name-box .action-box .price-box .price {
    font-size: 28rpx;
    font-weight: 600;
    margin-right: 20rpx;
  }

  .name-box .action-box .price-box .big {
    font-size: 44rpx;
  }

  .name-box .action-box .price-box .activity-icon {
    color: #fc1b35;
    margin-right: 20rpx;
    border: 2rpx solid #fc1b35;
    padding: 0rpx 16rpx;
    border-radius: 40rpx;
  }

  .name-box .action-box .price-box .stock {
    color: #999;
    margin-top: 10rpx;
  }

  .name-box .action-box .price-box.activitys .stock {
    margin-top: 0;
  }

  .name-box .action-box .actions {
    display: flex;
    align-items: center;
    margin-right: 10rpx;
    margin-bottom: -4rpx;
  }

  .name-box .action-box .actions .item {
    margin-left: 30rpx;
    text-align: center;
  }

  .name-box .action-box .actions .item .img {
    width: 32rpx;
    height: 32rpx;
    font-size: 0;
    margin: auto;
  }

  .name-box .action-box .actions .item .text {
    font-size: 20rpx;
    margin-top: 6rpx;
  }

  /* 优惠、活动 */
  .det-con {
    background: #fff;
    border-radius: 10rpx;
    padding: 30rpx;
    margin-top: 30rpx;
  }

  .det-con .item {
    display: flex;
    align-items: flex-start;
    margin-top: 24rpx;
    line-height: 32rpx;
  }

  .det-con .item:first-child {
    margin-top: 0;
  }

  .det-con .item .tit {
    font-weight: 600;
    margin-right: 30rpx;
  }

  .det-con .item .con {
    flex: 1;
    padding-right: 50rpx;
    position: relative;
  }

  .det-con .item .con::after {
    position: absolute;
    top: -6rpx;
    right: 0;
    display: block;
    content: "…";
    font-size: 28rpx;
    line-height: 1;
    color: #999;
    font-family: PingFangSC-Medium, tahoma;
  }

  .det-con .coupons-con {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -10rpx;
  }

  .det-con .coupons-con .c-item {
    font-size: 20rpx;
    color: #fc1b35;
    background: #ffebed;
    height: 24rpx;
    line-height: 24rpx;
    padding: 4rpx 14rpx;
    border-radius: 10rpx;
    margin: 0 10rpx 10rpx 0;
    position: relative;
  }

  .det-con .coupons-con .c-item::before,
  .det-con .coupons-con .c-item::after {
    position: absolute;
    top: 50%;
    display: block;
    width: 12rpx;
    height: 12rpx;
    content: " ";
    font-size: 0;
    background: #fff;
    border-radius: 12rpx;
    transform: translateY(-50%);
  }

  .det-con .coupons-con .c-item::before {
    left: -6rpx;
  }

  .det-con .coupons-con .c-item::after {
    right: -6rpx;
  }

  .det-con .discount-con {
    margin-bottom: -16rpx;
  }

  .det-con .discount-con .d-item {
    margin-bottom: 10rpx;
    line-height: 32rpx;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 22rpx;
  }

  .det-con .discount-con .d-item .d-tag {
    font-size: 20rpx;
    color: #fc1b35;
    background: #ffebed;
    border-radius: 4rpx;
    padding: 0 8rpx;
    margin-right: 10rpx;
    display: inline-block;
    vertical-align: top;
    height: 28rpx;
    line-height: 28rpx;
    margin-top: 4rpx;
  }

  .det-con .distribution-con {
    display: flex;
    align-items: center;
  }

  .det-con .item .con.distribution-con::after {
    display: none;
  }

  .det-con .distribution-con .dis-item {
    margin-right: 20rpx;
    position: relative;
    padding-left: 24rpx;
  }

  .det-con .distribution-con .dis-item::before,
  .det-con .distribution-con .dis-item::after {
    position: absolute;
    display: block;
    content: " ";
    font-size: 0;
  }

  .det-con .distribution-con .dis-item::before {
    left: 6rpx;
    top: 14rpx;
    width: 6rpx;
    height: 6rpx;
    background: #fc1b35;
    border-radius: 50%;
  }

  .det-con .distribution-con .dis-item::after {
    left: 0;
    top: 8rpx;
    width: 14rpx;
    height: 14rpx;
    border: 2rpx solid #fc1b35;
    border-radius: 50%;
  }

  /* 进行中的拼团、拼团玩法 */
  .group-box .g-tit {
    font-weight: 600;
  }

  .group-box .g-con {
    padding: 30rpx 0;
    box-shadow: 0 6rpx 6rpx rgba(0, 0, 0, .01);
  }

  .group-box .g-con .item {
    align-items: center;
  }

  .group-box .g-con .item .img {
    width: 80rpx;
    height: 80rpx;
    font-size: 0;
    border-radius: 50%;
    overflow: hidden;
  }

  .group-box .g-con .item .text {
    margin-left: 20rpx;
    flex: 1;
  }

  .group-box .g-con .item .text .num-time {
    display: flex;
    align-items: center;
    margin-top: 6rpx;
    font-size: 20rpx;
  }

  .group-box .g-con .item .text .num-time .num {
    color: #fc1b35;
  }

  .group-box .g-con .item .text .num-time .time {
    color: #999;
  }

  .group-box .g-con .item .btn {
    padding: 8rpx 20rpx;
    background: linear-gradient(135deg, #ff1a49, #f1091d 69%, #fc1b35);
    ;
    color: #fff;
    border-radius: 50rpx;
  }

  .group-box .rule {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 30rpx;
  }

  .group-box .rule .tit {
    font-weight: 600;
  }

  .group-box .rule .text-arrow {
    padding-right: 30rpx;
  }

  /* 评论 */
  .comment-box {
    padding: 30rpx;
    background: #fff;
    margin-top: 30rpx;
    border-radius: 10rpx;
  }

  .comment-box .c-tit {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .comment-box .c-tit .text {
    display: flex;
    align-items: baseline;
    font-weight: 600;
  }

  .comment-box .c-tit .text .small {
    margin-left: 10rpx;
    font-size: 20rpx;
  }

  .comment-box .c-tit .more {
    font-size: 20rpx;
    color: #999;
  }

  .comment-box .c-tags {
    white-space: nowrap;
  }

  .comment-box .c-tags .item {
    display: inline-block;
    padding: 6rpx 16rpx;
    border-radius: 40rpx;
    font-size: 20rpx;
    background: #ffebed;
    margin: 20rpx 0 0 20rpx;
  }

  .comment-box .c-tags .item:first-child {
    margin-left: 0;
  }

  .comment-box .c-tags .item.active {
    color: #fc1b35;
  }

  .comment-box .c-con .item {
    padding: 30rpx 0;
    box-shadow: 0 6rpx 6rpx rgba(0, 0, 0, .01);
  }

  .comment-box .c-con .item:last-child {
    box-shadow: none;
  }

  .comment-box .c-con .item .user-box {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .comment-box .c-con .item .user-box .info {
    display: flex;
    align-items: center;
  }

  .comment-box .c-con .item .user-box .info .img {
    width: 40rpx;
    height: 40rpx;
  }

  .comment-box .c-con .item .user-box .info .name {
    margin-left: 10rpx;
    font-weight: 600;
  }

  .comment-box .c-con .item .user-box .time {
    color: #999;
    font-size: 20rpx;
  }

  .comment-box .c-con .item .star-box {
    display: flex;
    align-items: center;
    padding: 20rpx 10rpx;
  }

  .comment-box .c-con .item .star-box .stars {
    display: flex;
    align-items: center;
  }

  .comment-box .c-con .item .star-box .stars .star {
    width: 20rpx;
    height: 20rpx;
    font-size: 0;
    margin-right: 6rpx;
  }

  .comment-box .c-con .item .star-box .stars .star:last-child {
    margin-right: 0;
  }

  .comment-box .c-con .item .star-box .sku {
    padding-left: 20rpx;
    margin-left: 20rpx;
    position: relative;
    color: #999;
    font-size: 20rpx;
  }

  .comment-box .c-con .item .star-box .sku::before {
    position: absolute;
    left: 0;
    top: 20%;
    bottom: 20%;
    display: block;
    width: 2rpx;
    height: auto;
    content: " ";
    font-size: 0;
    background: #eee;
  }

  .comment-box .c-con .item .comment-text {
    padding: 0 10rpx;
    line-height: 32rpx;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .comment-box .c-con .item .comment-img {
    margin-top: 20rpx;
    padding: 0 10rpx;
  }

  .comment-box .c-con .item .comment-img .img-box {
    white-space: nowrap;
  }

  .comment-box .c-con .item .comment-img .img-box .img {
    display: inline-block;
    width: 160rpx;
    height: 160rpx;
    font-size: 0;
    margin-left: 10rpx;
  }

  .comment-box .c-con .item .comment-img .img-box .img:first-child {
    margin-left: 0;
  }

  .comment-box .c-btn {
    display: flex;
    justify-content: center;
  }

  .comment-box .c-btn .view-all {
    padding: 12rpx 40rpx 12rpx 26rpx;
    border: 2rpx solid #ddd;
    border-radius: 60rpx;
  }

  .comment-box .c-btn .view-all.text-arrow::after {
    right: 26rpx;
  }

  /* 店铺 */
  .shop-box {
    padding: 30rpx;
    background: #fff;
    margin-top: 30rpx;
    border-radius: 10rpx;
  }

  .shop-box .shop-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 30rpx;
  }

  .shop-box .shop-info .info {
    display: flex;
    align-items: center;
  }

  .shop-box .shop-info .info .img {
    width: 80rpx;
    height: 80rpx;
    font-size: 0;
    border-radius: 50%;
    overflow: hidden;
  }

  .shop-box .shop-info .info .text {
    margin-left: 20rpx;
  }

  .shop-box .shop-info .info .text .name {
    font-weight: 600;
  }

  .shop-box .shop-info .info .text .focus-box {
    display: flex;
    align-items: center;
    margin-top: 10rpx;
    font-size: 20rpx;
  }

  .shop-box .shop-info .info .text .focus-box .self {
    padding: 2rpx 6rpx;
    line-height: 20rpx;
    color: #fff;
    background: #fc1b35;
    border-radius: 4rpx;
    margin-right: 10rpx;
    font-size: 18rpx;
  }

  .shop-box .shop-info .info .text .focus-box .focus {
    color: #999;
  }

  .shop-box .shop-info .go-shop {
    color: #fc1b35;
    border: 2rpx solid #fc1b35;
    padding: 6rpx 16rpx;
    border-radius: 40rpx;
    font-size: 20rpx;
    margin-top: 6rpx;
  }

  .shop-box .shop-recommend .prods {
    padding: 0;
  }

  .shop-box .shop-recommend .prods-box {
    white-space: nowrap;
  }

  .shop-box .shop-recommend .prods-box .item {
    display: inline-block;
    margin-left: 10rpx;
    margin-top: -9rpx;
    width: 220rpx;
  }

  .shop-box .shop-recommend .prods-box .item:first-child {
    margin-left: 0;
  }

  .shop-box .shop-recommend .prods-box .item .img {
    width: 220rpx;
    height: 220rpx;
  }

  .shop-box .shop-recommend .prods-box .item .text-box {
    padding: 0;
  }

  .shop-box .shop-recommend .prods-box .item .price-box .price {
    justify-content: center;
  }

  .shop-box .shop-recommend .prods-box .item .price-box .price .big {
    font-size: 24rpx;
  }

  /* 商品详情 */
  .det-det {
    background: #fff;
    border-radius: 10rpx;
    padding: 30rpx;
    margin-top: 30rpx;
  }

  .det-det .tit {
    font-weight: 600;
  }

  .det-det .con {
    margin-top: 20rpx;
  }

  .det-det .con .img {
    max-width: 690rpx;
    font-size: 0;
  }

  /* 底部 */
  .det-foot {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    max-width: 750rpx;
    margin: auto;
    height: calc(100rpx + env(safe-area-inset-bottom));
    box-sizing: border-box;
    padding: 0 30rpx env(safe-area-inset-bottom);
    display: flex;
    align-items: center;
    background: #fff;
    box-shadow: -4rpx 0 4rpx rgba(0, 0, 0, .05);
    border-radius: 10rpx 10rpx 0 0;
    z-index: 200;
  }

  .det-foot .actions {
    display: flex;
    align-items: center;
    justify-content: space-around;
    margin-left: -10rpx;
  }

  .det-foot .actions .item {
    text-align: center;
    padding: 0 20rpx;
  }

  .det-foot .actions .item .img {
    width: 36rpx;
    height: 36rpx;
    font-size: 0;
    margin: auto;
    position: relative;
  }

  .det-foot .actions .item .img .mark {
    position: absolute;
    top: -8rpx;
    left: 50%;
    min-width: 22rpx;
    padding: 0 2rpx;
    height: 26rpx;
    line-height: 26rpx;
    border-radius: 26rpx;
    background: #fc1b35;
    color: #fff;
    font-size: 18rpx;
    margin-left: 6rpx;
  }

  .det-foot .actions .item .text {
    font-size: 18rpx;
    text-align: center;
    margin-top: 6rpx;
  }

  .det-foot .btns {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    text-align: center;
  }

  .det-foot .btns .btn {
    flex: 1;
    margin-left: 20rpx;
    height: 70rpx;
    line-height: 70rpx;
    color: #fff;
    background: linear-gradient(135deg, #ffc30d, #ffba0d 69%, #ffc30d);
    border-radius: 70rpx;
    font-weight: 600;
    font-size: 26rpx;
  }

  .det-foot .btns .btn.btn-r {
    background: linear-gradient(135deg, #ff1a49, #f1091d 69%, #fc1b35);
  }

  .det-foot .btns .btn .price {
    color: #fff;
    font-size: 20rpx;
    font-weight: 400;
    justify-content: center;
    line-height: 28rpx;
    margin-top: 10rpx;
  }

  .det-foot .btns .btn .price .big {
    font-size: 28rpx;
  }

  .det-foot .btns .btn .text {
    font-size: 22rpx;
    font-weight: 400;
    line-height: 22rpx;
  }

  /* 评论弹窗 */
  .comment-popup {
    position: fixed;
    top: 100%;
    bottom: calc(100rpx + env(safe-area-inset-bottom));
    left: 0;
    right: 0;
    max-width: 750rpx;
    margin: auto;
    background: #f2f3f7;
    z-index: 190;
  }

  .comment-popup.show {
    top: 0;
  }

  .comment-popup .comment-con {
    transform: translateX(100%);
    transition: all .3s;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
  }

  .comment-popup .comment-con::after {
    min-height: calc(100% + 2rpx);
  }

  .comment-popup.show .comment-con {
    transform: translateX(0);
  }

  .comment-popup .comment-box.comment-con {
    margin-top: 0;
    padding: 0;
    background: #f2f3f7;
  }

  .comment-popup .top-bar {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    background: #fff;
    height: 88rpx;
    box-shadow: 0 6rpx 6rpx rgba(0, 0, 0, .01);
    z-index: 199;
  }

  .comment-popup .top-bar .arrow {
    position: absolute;
    top: 50%;
    left: 30rpx;
    width: 16rpx;
    height: 16rpx;
    border: 2rpx solid #333;
    border-width: 2rpx 0 0 2rpx;
    transform: rotate(-45deg);
  }

  .comment-popup .top-bar .text {
    text-align: center;
    line-height: 88rpx;
    font-size: 32rpx;
    margin: 0 70rpx;
    font-weight: 600;
  }

  .comment-popup .comment-box.comment-con .c-tit {
    margin-top: 88rpx;
    padding: 30rpx 30rpx 0rpx;
    background: #fff;
  }

  .comment-popup .comment-box.comment-con .c-tags {
    padding: 0 30rpx 30rpx;
    box-sizing: border-box;
    background: #fff;
    border-radius: 0 0 10rpx 10rpx;
  }

  .comment-popup .comment-box.comment-con .c-con {
    padding: 0 30rpx;
    border-radius: 10rpx 10rpx 0 0;
    margin-top: 30rpx;
    background: #fff;
  }

  .comment-popup .comment-box.comment-con .c-con .c-btn {
    padding: 40rpx 0;
  }



}